feat(assistant): expand AionUi assistant into a butler with remote-access#481
Merged
Conversation
…cess Rename the built-in `aionui-assistant` to "AionUi Butler" and broaden its scope to a one-stop manager for AionUi itself: configuration, diagnosis, and remote access. - Add a new opt-in built-in skill `aionui-webui-public`: walks a non-technical user through exposing their local WebUI to the internet via a cloudflared quick tunnel (self-installs cloudflared cross-platform, forces http2 to dodge the QUIC/530 trap, verifies the public URL before handing it over, explains the ephemeral-link limitations). Distinct from `aionui-webui-setup`, which covers manual LAN/Tailscale/server config through the settings UI. - Attach the new skill to the assistant (`enabled_skills`) and add a Mode 5 "remote access" section to all three rule files, with a plain-language rule: never expose jargon (tunnel, cloudflared, port, ...) to remote-access users. - Rename to Butler across name_i18n (en/zh/ru/uk) and all rule titles; zh-CN name is "AionUi管家". - Refresh description and quick-start prompts to mention remote access. - Tighten the cron wording: the assistant can diagnose why a scheduled task didn't run, but does not create/configure scheduled tasks. - Normalize zh-CN punctuation to full-width. cargo test -p aionui-assistant -p aionui-extension: all pass.
piorpua
pushed a commit
that referenced
this pull request
Jun 17, 2026
🤖 I have created a release *beep* *boop* --- ## [0.1.31](v0.1.30...v0.1.31) (2026-06-17) ### Features * **assistant:** add built-in AionUi self-management assistant ([#474](#474)) ([eea941e](eea941e)) * **assistant:** expand AionUi assistant into a butler with remote-access ([#481](#481)) ([794c21a](794c21a)) * enforce TeamRun ownership for agent turns ([#483](#483)) ([4cc168a](4cc168a)) * **team:** support queued team_send_message semantics ([#479](#479)) ([a57a079](a57a079)) ### Bug Fixes * **acp:** persist runtime model and mode into assistant preferences ([#482](#482)) ([b9bcad9](b9bcad9)) * harden ACP image path handling ([#477](#477)) ([c79b5a8](c79b5a8)) * **team:** retry handoff turns after runtime release ([#480](#480)) ([77d252f](77d252f)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Builds on the merged #474 (
aionui-assistant). Reframes that built-in into the AionUi Butler — a single one-stop assistant for managing AionUi itself across three areas: configuration, diagnosis, and remote access — and adds the new opt-in skill the remote-access flow relies on.Changes
aionui-webui-public(builtin-skills/aionui-webui-public/SKILL.md, opt-in at the root, notauto-inject/): walks a non-technical user through exposing their local WebUI to the internet via a Cloudflare quick tunnel. Verified end-to-end — self-installscloudflaredcross-platform (direct GitHub-release binary, no package manager), forces--protocol http2to dodge the QUIC/HTTP-530 trap, verifies the public URL returns 200 before handing it over, and explains the ephemeral-link limitations. Deliberately distinct fromaionui-webui-setup(manual LAN / Tailscale / server config via the settings UI); this one produces a one-click public link via an automatic tunnel.assistants.json—aionui-assistantentry: attachaionui-webui-publictoenabled_skills; rename to "AionUi Butler" acrossname_i18n(en/zh/ru/uk; zh-CN isAionUi管家); refresh description and quick-start prompts to include remote access; normalize zh-CN punctuation to full-width.rules/aionui-assistant.{en-US,zh-CN,ru-RU}.md— retitle to Butler; add a third capability block (remote access) to the self-introduction; add Mode 5: Remote access with a hard plain-language rule (never expose jargon like tunnel / cloudflared / port to remote-access users); tighten the cron wording so the assistant only diagnoses why a scheduled task didn't run and does not create/configure scheduled tasks.No
.rs/ schema changes — purely additive assets, same pattern as #474. No new preset id (reusesaionui-assistant), sopreset-id-whitelist.jsonis unchanged.Verification
cargo test -p aionui-assistant -p aionui-extension— all pass.just check(migration-check + lint + fmt-check + test) — exit 0.aioncoreand ran it in a local AionUi dev instance; confirmed via REST:aionui-assistantshowsname=AionUi管家,enabled_skills=[aionui-config, aionui-troubleshooting, aionui-webui-public], rule content loads, andaionui-webui-publicis registered withsource=builtin.Companion frontend check
Reuses the existing
aionui-assistantid, so the legacy→backend migration whitelist needs no change. The display name changed (Assistant → Butler); if the AionUi frontend hard-codes the old name anywhere (or snapshots the assistant list), a small sync may be needed — to be verified on the iOfficeAI/AionUi side.